/* indent size: 2 */

module.exports = (app) => {
  const DataTypes = app.Sequelize;

  const BackGroundImageTypes = app.model.define(
    'backgroundImageTypes',
    {
      id: {
        type: DataTypes.INTEGER,
        unique: true,
        primaryKey: true,
        autoIncrement: true,
        allowNull: false,
      },
      type: {
        type: DataTypes.INTEGER,
        allowNull: true,
      },
      desc: {
        type: DataTypes.STRING,
        allowNull: true,
      },
      createdAt: {
        type: DataTypes.DATE,
        allowNull: true,
        field: 'created_at',
      },
      updatedAt: {
        type: DataTypes.DATE,
        allowNull: true,
        field: 'updated_at',
      },
    },
    {
      tableName: 'backgroundImageTypes',
      // 要使用 createdAt/updatedAt 必须开启这项配置
      timestamps: true,
      freezeTableName: true,
    }
  );

  // 数据库同步
  // BackGroundImageTypes.sync(); // ：如果数据库表不存在，则创建数据库表，如果存在，则不做任何操作

  // BackGroundImageTypes.sync({ force: true });//：如果数据库表已经存在，则先删除数据库表，然后重新创建数据表
  BackGroundImageTypes.sync({ alter: true }); //： 这个会比较数据库表当前状态（比如数据库表的列及数据类型等）与模型的不同之处，然后修改数据库表不同的地方以匹配模型

  return BackGroundImageTypes;
};
